﻿#region zh-CHS 2006 - 2007 DemoSoft 团队 | en 2006 - 2007 DemoSoft Team

//     NOTES
// ---------------
//
// This file is a part of the G.O.S.E(Game Online Server Engine) for .NET.
//
//                 2006-2007 DemoSoft Team
//
//
// First Version : by H.Q.Cai - mailto:caihuanqing@hotmail.com

/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU Lesser General Public License as published
 *   by the Free Software Foundation; either version 2.1 of the License, or
 *   (at your option) any later version.
 *
 ***************************************************************************/

#region zh-CHS 包含名字空间 | en Include namespace
using System;
using System.Threading;
#endregion

namespace Demo_G.O.S.E.ServerEngine.Mobile
{
    /// <summary>
    /// BaseMobile Delta
    /// </summary>
    public class BaseMobileDelta : IMobileDelta
    {
        #region zh-CHS 共有属性 | en Public Properties
        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateX = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool X
        {
            get { return m_UpdateX; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaX = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaX
        {
            get { return m_IsDeltaX; }
            set { m_IsDeltaX = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateY = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Y
        {
            get { return m_UpdateY; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaY = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaY
        {
            get { return m_IsDeltaY; }
            set { m_IsDeltaY = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateZ = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Z
        {
            get { return m_UpdateZ; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaZ = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaZ
        {
            get { return m_IsDeltaZ; }
            set { m_IsDeltaZ = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateLocation = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Location
        {
            get { return m_UpdateLocation; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaLocation = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaLocation
        {
            get { return m_IsDeltaLocation; }
            set { m_IsDeltaLocation = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateDirection = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Direction
        {
            get { return m_UpdateDirection; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaDirection = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaDirection
        {
            get { return m_IsDeltaDirection; }
            set { m_IsDeltaDirection = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateSerial = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Serial
        {
            get { return m_UpdateSerial; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaSerial = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaSerial
        {
            get { return m_IsDeltaSerial; }
            set { m_IsDeltaSerial = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateMap = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Map
        {
            get { return m_UpdateMap; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaMap = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaMap
        {
            get { return m_IsDeltaMap; }
            set { m_IsDeltaMap = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdatePlayer = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Player
        {
            get { return m_UpdatePlayer; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaPlayer = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaPlayer
        {
            get { return m_IsDeltaPlayer; }
            set { m_IsDeltaPlayer = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateName = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Name
        {
            get { return m_UpdateName; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaName = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaName
        {
            get { return m_IsDeltaName; }
            set { m_IsDeltaName = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateHidden = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Hidden
        {
            get { return m_UpdateHidden; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaHidden = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaHidden
        {
            get { return m_IsDeltaHidden; }
            set { m_IsDeltaHidden = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateNetState = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool NetState
        {
            get { return m_UpdateNetState; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaNetState = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaNetState
        {
            get { return m_IsDeltaNetState; }
            set { m_IsDeltaNetState = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateAccessLevel = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool AccessLevel
        {
            get { return m_UpdateAccessLevel; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaAccessLevel = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaAccessLevel
        {
            get { return m_IsDeltaAccessLevel; }
            set { m_IsDeltaAccessLevel = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateAlive = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Alive
        {
            get { return m_UpdateAlive; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaAlive = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaAlive
        {
            get { return m_IsDeltaAlive; }
            set { m_IsDeltaAlive = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateMobileDelta = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool MobileDelta
        {
            get { return m_UpdateMobileDelta; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaMobileDelta = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaMobileDelta
        {
            get { return m_IsDeltaMobileDelta; }
            set { m_IsDeltaMobileDelta = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateMoveToCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool MoveToCall
        {
            get { return m_UpdateMoveToCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaMoveToCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaMoveToCall
        {
            get { return m_IsDeltaMoveToCall; }
            set { m_IsDeltaMoveToCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateSetLocationCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool SetLocationCall
        {
            get { return m_UpdateSetLocationCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaSetLocationCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaSetLocationCall
        {
            get { return m_IsDeltaSetLocationCall; }
            set { m_IsDeltaSetLocationCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateMoveToWorldCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool MoveToWorldCall
        {
            get { return m_UpdateMoveToWorldCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaMoveToWorldCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaMoveToWorldCall
        {
            get { return m_IsDeltaMoveToWorldCall; }
            set { m_IsDeltaMoveToWorldCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateAddItemCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool AddItemCall
        {
            get { return m_UpdateAddItemCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaAddItemCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaAddItemCall
        {
            get { return m_IsDeltaAddItemCall; }
            set { m_IsDeltaAddItemCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateRemoveItemCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool RemoveItemCall
        {
            get { return m_UpdateRemoveItemCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaRemoveItemCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaRemoveItemCall
        {
            get { return m_IsDeltaRemoveItemCall; }
            set { m_IsDeltaRemoveItemCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateDeathCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool DeathCall
        {
            get { return m_UpdateDeathCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaDeathCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaDeathCall
        {
            get { return m_IsDeltaDeathCall; }
            set { m_IsDeltaDeathCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateResurrectCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool ResurrectCall
        {
            get { return m_UpdateResurrectCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaResurrectCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaResurrectCall
        {
            get { return m_IsDeltaResurrectCall; }
            set { m_IsDeltaResurrectCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateLoots = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool Loots
        {
            get { return m_UpdateLoots; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaLoots = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaLoots
        {
            get { return m_IsDeltaLoots; }
            set { m_IsDeltaLoots = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateAddFriendCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool AddFriendCall
        {
            get { return m_UpdateAddFriendCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaAddFriendCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaAddFriendCall
        {
            get { return m_IsDeltaAddFriendCall; }
            set { m_IsDeltaAddFriendCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateRemoveFriendCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool RemoveFriendCall
        {
            get { return m_UpdateRemoveFriendCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaRemoveFriendCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaRemoveFriendCall
        {
            get { return m_IsDeltaRemoveFriendCall; }
            set { m_IsDeltaRemoveFriendCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateAddGroupCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool AddGroupCall
        {
            get { return m_UpdateAddGroupCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaAddGroupCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaAddGroupCall
        {
            get { return m_IsDeltaAddGroupCall; }
            set { m_IsDeltaAddGroupCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateRemoveGroupCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool RemoveGroupCall
        {
            get { return m_UpdateRemoveGroupCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaRemoveGroupCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaRemoveGroupCall
        {
            get { return m_IsDeltaRemoveGroupCall; }
            set { m_IsDeltaRemoveGroupCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateAddPartyCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool AddPartyCall
        {
            get { return m_UpdateAddPartyCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaAddPartyCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaAddPartyCall
        {
            get { return m_IsDeltaAddPartyCall; }
            set { m_IsDeltaAddPartyCall = value; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_UpdateRemovePartyCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool RemovePartyCall
        {
            get { return m_UpdateRemovePartyCall; }
        }

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_IsDeltaRemovePartyCall = false;
        #endregion
        /// <summary>
        /// 
        /// </summary>
        public bool IsDeltaRemovePartyCall
        {
            get { return m_IsDeltaRemovePartyCall; }
            set { m_IsDeltaRemovePartyCall = value; }
        }
        #endregion

        #region zh-CHS 共有方法 | en Public Methods
        /// <summary>
        /// 
        /// </summary>
        public void UpdateX()
        {
            m_UpdateX = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreX()
        {
            m_UpdateX = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateY()
        {
            m_UpdateY = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreY()
        {
            m_UpdateY = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateZ()
        {
            m_UpdateZ = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreZ()
        {
            m_UpdateZ =false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateLocation()
        {
            m_UpdateLocation = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreLocation()
        {
            m_UpdateLocation = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateDirection()
        {
            m_UpdateDirection = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreDirection()
        {
            m_UpdateDirection = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateSerial()
        {
            m_UpdateSerial = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreSerial()
        {
            m_UpdateSerial = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateMap()
        {
            m_UpdateMap = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreMap()
        {
            m_UpdateMap = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdatePlayer()
        {
            m_UpdatePlayer = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestorePlayer()
        {
            m_UpdatePlayer = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateName()
        {
            m_UpdateName = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreName()
        {
            m_UpdateName = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateHidden()
        {
            m_UpdateHidden = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreHidden()
        {
            m_UpdateHidden = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateNetState()
        {
            m_UpdateNetState = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreNetState()
        {
            m_UpdateNetState = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateAccessLevel()
        {
            m_UpdateAccessLevel = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreAccessLevel()
        {
            m_UpdateAccessLevel = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateAlive()
        {
            m_UpdateAlive = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreAlive()
        {
            m_UpdateAlive = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateMobileDelta()
        {
            m_UpdateMobileDelta = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreMobileDelta()
        {
            m_UpdateMobileDelta = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateMoveToCall()
        {
            m_UpdateMoveToCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreMoveToCall()
        {
            m_UpdateMoveToCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateSetLocationCall()
        {
            m_UpdateSetLocationCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreSetLocationCall()
        {
            m_UpdateSetLocationCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateMoveToWorldCall()
        {
            m_UpdateMoveToWorldCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreMoveToWorldCall()
        {
            m_UpdateMoveToWorldCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateAddItemCall()
        {
            m_UpdateAddItemCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreAddItemCall()
        {
            m_UpdateAddItemCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateRemoveItemCall()
        {
            m_UpdateRemoveItemCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreRemoveItemCall()
        {
            m_UpdateRemoveItemCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateDeathCall()
        {
            m_UpdateDeathCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreDeathCall()
        {
            m_UpdateDeathCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateResurrectCall()
        {
            m_UpdateResurrectCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreResurrectCall()
        {
            m_UpdateResurrectCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateLoots()
        {
            m_UpdateLoots = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreLoots()
        {
            m_UpdateLoots = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateAddFriendCall()
        {
            m_UpdateAddFriendCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreAddFriendCall()
        {
            m_UpdateAddFriendCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateRemoveFriendCall()
        {
            m_UpdateRemoveFriendCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreRemoveFriendCall()
        {
            m_UpdateRemoveFriendCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateAddGroupCall()
        {
            m_UpdateAddGroupCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreAddGroupCall()
        {
            m_UpdateAddGroupCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateRemoveGroupCall()
        {
            m_UpdateRemoveGroupCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreRemoveGroupCall()
        {
            m_UpdateRemoveGroupCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateAddPartyCall()
        {
            m_UpdateAddPartyCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreAddPartyCall()
        {
            m_UpdateAddPartyCall = false;
        }

        /// <summary>
        /// 
        /// </summary>
        public void UpdateRemovePartyCall()
        {
            m_UpdateRemovePartyCall = true;
        }

        /// <summary>
        /// 
        /// </summary>
        public void RestoreRemovePartyCall()
        {
            m_UpdateRemovePartyCall = false;
        }

        #endregion

        #region zh-CHS 接口实现 | en Interface Implementation

        #region zh-CHS 私有成员变量 | en Private Member Variables
        /// <summary>
        /// 
        /// </summary>
        private bool m_bIsLockThis = false;
        /// <summary>
        /// 
        /// </summary>
        private object m_LockThis = new object();
        #endregion
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        public bool LoginDeltaQueue()
        {
            bool bReturn = false;

            if ( Monitor.TryEnter( m_LockThis ) == false )
                return false;
            else
            {
                if ( m_bIsLockThis == false ) // 没有锁定
                    bReturn = m_bIsLockThis = true;
            }
            Monitor.Exit( m_LockThis );

            return bReturn;
        }

        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        public bool IsLoginDeltaQueue()
        {
            return m_bIsLockThis;
        }

        /// <summary>
        /// 
        /// </summary>
        public void LogoutDeltaQueue()
        {
            Monitor.Enter( m_LockThis );
            {
                m_bIsLockThis = false;
            }
            Monitor.Exit( m_LockThis );
        }
        #endregion
    }
}
#endregion

